home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Serving Financial Service…olutions Suite 1994 Fall
/
Serving Financial Services Solutions Suite 1994 Fall.iso
/
Apps
/
AFS
/
PasteUp.app
/
colorsep_prolog.ps
< prev
next >
Wrap
Text File
|
1994-12-14
|
20KB
|
824 lines
% BEGIN separation prologue
% (PasteUp color separation prologue version 1.1 edit 8\n) print flush
/_NXLevel2 where {
pop _NXLevel2 {
currentdict /sethsbcolor undef
currentdict /setrgbcolor undef
currentdict /setgray undef
(got here) = flush
} if
} if
userdict begin
systemdict /undef known {
currentdict /setgray undef
currentdict /nxsetgray undef
currentdict /nxsetrgbcolor undef
currentdict /nxsetcmykcolor undef
}{
% /setgray systemdict /setgray get def
% /nxsetgray /setgray load def
} ifelse
end
/_previewsetgray /setgray load def
userdict begin
% /setcmykcolor is tricky because the emulation code goes into userdict
% where "load" finds it later. We do some special checking for this
% operator before loading the normal Adobe stuff
/setcmykcolor_emulation {
1.0 exch sub dup dup 6 -1 roll
sub dup 0 lt{pop 0}if 5 1 roll
4 -1 roll sub dup 0 lt{pop 0}if 3 1 roll
exch sub dup 0 lt{pop 0}if setrgbcolor
} bind def
/setcmykcolor {
PasteUp_separate_vars begin
/customcolor getgsproperty 5 1 roll 4 index null eq {
setprocessseparate
} {
_setcmykcolor currentgray 1 exch sub setcustomseparate
} ifelse
end
} bind def
/setrgbcolor {
PasteUp_separate_vars begin
/customcolor getgsproperty 4 1 roll 3 index null eq {
/rgbtocmyk getgsproperty exec setprocessseparate
} {
_setrgbcolor currentgray 1 exch sub setcustomseparate
} ifelse
end
} def
/nxsetrgbcolor /setrgbcolor load def
/setoverprint {
/overprint exch setgsproperty
} def
end %userdict
userdict /PasteUp_packedarray 5 dict dup begin put
/initialize {
/packedarray where {
pop
} {
PasteUp_packedarray begin PasteUp_packedarray {
dup xcheck {
bind
} if userdict 3 1 roll put
} forall end
} ifelse
} def
/terminate {
} def
/packedarray {
array astore readonly
} def
/setpacking {
pop
} def
/currentpacking {
false
} def
currentdict readonly pop end
PasteUp_packedarray /initialize get exec
currentpacking true setpacking
userdict /PasteUp_cmykcolor 4 dict dup begin put
/initialize {
/setcmykcolor where {
pop
} {
userdict /PasteUp_cmykcolor_vars 2 dict dup begin put
/_setrgbcolor /setrgbcolor load def
/_currentrgbcolor /currentrgbcolor load def
PasteUp_cmykcolor begin PasteUp_cmykcolor {
dup xcheck {
bind
} if pop pop
} forall
end
end
PasteUp_cmykcolor begin
} ifelse
} def
/terminate {
currentdict PasteUp_cmykcolor eq {
end
} if
} def
/setcmykcolor {
1 sub 4 1 roll 3 {
3 index add neg dup 0 lt {
pop 0
} if 3 1 roll
} repeat PasteUp_cmykcolor_vars /_setrgbcolor get exec pop
} def
/currentcmykcolor {
PasteUp_cmykcolor_vars /_currentrgbcolor get exec 3 {
1 sub neg 3 1 roll
} repeat 0
} def
currentdict readonly pop end
setpacking
currentpacking true setpacking
userdict /PasteUp_gsproperty 8 dict dup begin put
/initialize {
/setgsproperty where {
pop
} {
userdict /PasteUp_gsproperty_vars 8 dict dup begin put
/stack 32 array def
0 1 stack length 1 sub {
stack exch 10 dict put
} for
/gtop 0 def
/top 0 def
/time 0 def
/_gsave /gsave load def
/_grestore /grestore load def
/_grestoreall /grestoreall load def
/_save /save load def
PasteUp_gsproperty begin
PasteUp_gsproperty {
dup xcheck {
bind
} if
pop pop
} forall
end
end
PasteUp_gsproperty begin
} ifelse
} def
/terminate {
currentdict PasteUp_gsproperty eq {
end
} if
} def
/setgsproperty {
PasteUp_gsproperty_vars begin
stack gtop get dup length exch maxlength eq {
stack gtop 2 copy get dup maxlength 2 mul dict copy put
} if
stack gtop get 3 1 roll put
end
} def
/getgsproperty {
PasteUp_gsproperty_vars begin gtop -1 -1 {
stack exch get 2 copy exch known {
2 copy exch get /_notdef ne {
exch get dup exit
} if
} if pop
} for pop end
} def
/gsave {
PasteUp_gsproperty_vars begin
_gsave /gtop gtop 1 add def
stack gtop get dup dup {
pop /_notdef put dup
} forall
pop pop
end
} def
/grestore {
PasteUp_gsproperty_vars begin
gtop top gt {
/gtop gtop 1 sub def
} if
_grestore
end
} def
/grestoreall {
PasteUp_gsproperty_vars begin
/gtop top def
_grestoreall
end
} def
/save {
PasteUp_gsproperty_vars /_save get exec
PasteUp_gsproperty_vars begin
/gtop gtop 1 add def
stack gtop get dup dup {
pop /_notdef put dup
} forall
pop pop
/top gtop def
end
} def
currentdict readonly pop end setpacking
currentpacking true setpacking
userdict /PasteUp_separate 50 dict dup begin put
/initialize {
/nulldevice false setgsproperty
/customcolor null setgsproperty
/overprint false setgsproperty
/rgbtocmyk {
3 {
1 exch sub 3 1 roll
} repeat
3 copy 1
4 1 roll
3 {
3 index 2 copy gt {
exch
} if
pop
4 1 roll
} repeat
pop pop pop
4 1 roll
3 {
3 index sub 3 1 roll
} repeat
4 -1 roll
} setgsproperty
userdict /PasteUp_separate_vars 22 dict dup begin put
/savestate null def
/separation /proof def
/setprocessseparate
PasteUp_separate /processseparationset get separation get
def
/setcustomseparate
PasteUp_separate /customseparationset get separation get
def
/customcolors 1 dict def
/nullimage 1 def
/_setrgbcolor /setrgbcolor load def
/_sethsbcolor /sethsbcolor load def
systemdict /setcmykcolor known {
/_setcmykcolor systemdict /setcmykcolor get def
}{
/_setcmykcolor /setcmykcolor_emulation load def
} ifelse
/_previewsetgray where {
pop /_setgray /_previewsetgray load def
}{
/_setgray /setgray load def
} ifelse
/_fill /fill load def
/_eofill /eofill load def
/_stroke /stroke load def
/_imagemask /imagemask load def
/_image /image load def
/_show /show load def
/xyshow where {
pop /_xyshow /xyshow load def
}{
/xyshow{
0 1 3 index length 1 sub{
currentpoint 4 index 3 index 1 getinterval show
3 index 3 index 2 mul 1 add get add exch
3 index 3 index 2 mul get add exch moveto pop
} for pop pop
} bind def
} ifelse
/_ashow /ashow load def
/_widthshow /widthshow load def
/_awidthshow /awidthshow load def
/_kshow /kshow load def
/densitycustomcolor {
exch customcolors null ne {
dup 4 get customcolors exch get dup type /booleantype ne {
exch
} if pop
} if aload pop pop 4 {
4 index mul 4 1 roll
} repeat 5 -1 roll pop
} def
PasteUp_separate begin
PasteUp_separate {
dup xcheck {
bind
} if
pop pop
} forall
end
end
PasteUp_separate begin
} def
/terminate {
currentdict PasteUp_separate eq {
end
} if
} def
/beginseparate {
% PasteUp_separate_vars /savestate save put
PasteUp_separate_vars begin
/nullimage exch def
dup length 10 add dict begin
{
dup xcheck exch dup
type /arraytype eq {
aload pop dup 6 1 roll findcmykcustomcolor
} {
true
} ifelse
3 -1 roll {
cvx
} if
def
} forall
currentdict end
/customcolors exch def
/separation exch def
/setprocessseparate
PasteUp_separate /processseparationset get separation get
def
/setcustomseparate
PasteUp_separate /customseparationset get separation get
def
/nulldevice false setgsproperty
end
} def
/endseparate {
% PasteUp_separate_vars /savestate get restore
} def
/checkcustomcolors { % returns boolean; GCR 8/30/92
customcolors exch known
% customcolors exch [ 1 1.0 1.0 1.0 1.0 ] put true
} def
/findcustomcolor {
0 0 0 1 5 -1 roll 5 packedarray
} def
/findgraycustomcolor {
exch 1 exch sub 0 0 0 4 -1 roll 5 -1 roll 5 packedarray
} def
/findrgbcustomcolor {
4 1 roll /rgbtocmyk getgsproperty exec 5 -1 roll 5 packedarray
} def
/findhsbcustomcolor {
4 1 roll gsave PasteUp_separate_vars /_sethsbcolor get exec currentrgbcolor grestore /rgbtocmyk getgsproperty exec 5 -1 roll 5 packedarray
} def
/findcmykcustomcolor {
5 packedarray
} def
/setcustomcolor {
dup type dup /integertype eq exch /realtype eq or {
/customcolor null setgsproperty
PasteUp_separate_vars begin
setcustomseparate
end
} {
/customcolor exch setgsproperty
} ifelse
} def
/currentcustomcolor {
/customcolor getgsproperty
} def /setoverprint {
/overprint exch setgsproperty
} def /currentoverprint {
/overprint getgsproperty
} def /setrgbtocmyk {
/rgbtocmyk exch setgsproperty
} def /currentrgbtocmyk {
/rgbtocmyk getgsproperty
} def
/setgray {
PasteUp_separate_vars begin
/customcolor getgsproperty exch 1 index null eq {
1 exch sub 0 0 0 4 -1 roll setprocessseparate
} {
1 exch sub setcustomseparate
} ifelse
end
} def
/nxsetgray /setgray load def
userdict /nxsetgray /setgray load put
/setrgbcolor {
PasteUp_separate_vars begin
/customcolor getgsproperty 4 1 roll 3 index null eq {
/rgbtocmyk getgsproperty exec setprocessseparate
} {
_setrgbcolor currentgray 1 exch sub setcustomseparate
} ifelse
end
} def
/nxsetrgbcolor /setrgbcolor load def
/sethsbcolor {
PasteUp_separate_vars /_sethsbcolor get exec currentrgbcolor setrgbcolor
} def
/setcmykcolor {
PasteUp_separate_vars begin
/customcolor getgsproperty 5 1 roll 4 index null eq {
setprocessseparate
} {
_setcmykcolor currentgray 1 exch sub setcustomseparate
} ifelse
end
} def
/nxsetcmykcolor /setcmykcolor load def
/setcmybcolor {
setcmykcolor
} def
currentdict
/processseparationset 6 dict dup begin put
/proof {
_setcmykcolor pop
} def
/processblack {
1 1 index sub _setgray 0 eq dup {
pop 3 copy add add 0 ne dup {
pop /overprint getgsproperty
} if
} if /nulldevice exch setgsproperty 4 {
pop
} repeat
} bind def
/processcyan {
4 -1 roll processseparationset /processblack get exec
} bind def
/processmagenta {
3 -1 roll processseparationset /processblack get exec
} bind def
/processyellow {
exch processseparationset /processblack get exec
} bind def
/customcolor {
/nulldevice /overprint getgsproperty
6 copy pop pop add add add 0 ne and setgsproperty
1 _setgray pop pop pop pop pop
} def
currentdict readonly pop
end
currentdict
/customseparationset 6 dict dup begin put
/proof {
1 index 4 get checkcustomcolors {
densitycustomcolor _setcmykcolor false
} {
pop pop 1 _setgray /overprint getgsproperty
} ifelse /nulldevice exch setgsproperty
} def
/processcyan {
1 index 4 get checkcustomcolors {
1 index 4 get customcolors exch get xcheck {
densitycustomcolor 3 index 0 eq 1 index 1 eq /overprint getgsproperty or and /nulldevice exch setgsproperty pop pop pop 1 exch sub _setgray
} {
false /nulldevice exch setgsproperty 1 exch sub _setgray pop
} ifelse
} {
/overprint getgsproperty /nulldevice exch setgsproperty pop pop 1 _setgray
} ifelse
} def /processmagenta {
1 index 4 get checkcustomcolors {
1 index 4 get customcolors exch get xcheck {
densitycustomcolor 2 index 0 eq 1 index 1 eq /overprint getgsproperty or and /nulldevice exch setgsproperty 4 -1 roll pop pop pop 1 exch sub _setgray
} {
false /nulldevice exch setgsproperty 1 exch sub _setgray pop
} ifelse
} {
/overprint getgsproperty /nulldevice exch setgsproperty pop pop 1 _setgray
} ifelse
} def /processyellow {
1 index 4 get checkcustomcolors {
1 index 4 get customcolors exch get xcheck {
densitycustomcolor 1 index 0 eq 1 index 1 eq /overprint getgsproperty or and /nulldevice exch setgsproperty 4 -2 roll pop pop pop 1 exch sub _setgray
} {
false /nulldevice exch setgsproperty 1 exch sub _setgray pop
} ifelse
} {
/overprint getgsproperty /nulldevice exch setgsproperty pop pop 1 _setgray
} ifelse
} def /processblack {
1 index 4 get checkcustomcolors {
1 index 4 get customcolors exch get xcheck {
densitycustomcolor 0 index 0 eq /overprint getgsproperty and /nulldevice exch setgsproperty 4 -3 roll pop pop pop 1 exch sub _setgray
} {
false /nulldevice exch setgsproperty 1 exch sub _setgray pop
} ifelse
} {
/overprint getgsproperty /nulldevice exch setgsproperty pop pop 1 _setgray
} ifelse
} def /customcolor {
1 index 4 get checkcustomcolors {
1 index 4 get customcolors exch get xcheck {
/overprint getgsproperty /nulldevice exch setgsproperty pop pop 1 _setgray
} {
false /nulldevice exch setgsproperty 1 exch sub _setgray pop
} ifelse
} {
/overprint getgsproperty /nulldevice exch setgsproperty pop pop 1 _setgray
} ifelse
} def currentdict readonly pop end /fill {
/nulldevice getgsproperty {
newpath
} {
PasteUp_separate_vars /_fill get exec
} ifelse
} def /eofill {
/nulldevice getgsproperty {
newpath
} {
PasteUp_separate_vars /_eofill get exec
} ifelse
} def /stroke {
/nulldevice getgsproperty {
newpath
} {
PasteUp_separate_vars /_stroke get exec
} ifelse
} def /imagemask {
/nulldevice getgsproperty {
gsave nulldevice PasteUp_separate_vars /_imagemask get exec grestore
} {
PasteUp_separate_vars /_imagemask get exec
} ifelse
} def
/image {
PasteUp_separate_vars /separation get /processblack eq
PasteUp_separate_vars /separation get /proof eq or not {
gsave
[ /pop cvx PasteUp_separate_vars /nullimage get ] cvx settransfer
PasteUp_separate_vars /_image get exec
grestore
} {
PasteUp_separate_vars /_image get exec
} ifelse
} def
/translateToGrayScale {
0 1 2 index length 1 sub { %for
4 index 1 index get 0.3 mul
4 index 2 index get 0.59 mul
4 index 3 index get 0.11 mul
4 index 4 index get
add add add cvi 255 min
255 exch sub
2 index 3 1 roll put
} for
4 1 roll pop pop pop
} bind def
/colorimage {
pop pop
[
5 -1 roll /exec cvx
6 -1 roll /exec cvx
7 -1 roll /exec cvx
8 -1 roll /exec cvx
/translateToGrayScale cvx
] cvx image
} def
/show {
/nulldevice getgsproperty {
stringwidth rmoveto
} {
PasteUp_separate_vars /_show get exec
} ifelse
} def
/nullExec {
PasteUp_separate_vars exch get /nulldevice getgsproperty {
gsave
PasteUp_separation_vars /_teststrips get
currentmatrix nulldevice setmatrix exec
currentpoint
grestore
moveto
} {
exec
} ifelse
} def
/xyshow {
/_xyshow nullExec
} def
/ashow {
/_ashow nullExec
} def /widthshow {
/_widthshow nullExec
} def /awidthshow {
/_awidthshow nullExec
} def /kshow {
/_kshow nullExec
} def
currentdict readonly pop end setpacking
currentpacking true setpacking userdict
/PasteUp_separation 32 dict dup begin put
/initialize {
userdict
/PasteUp_separation_vars 16 dict dup begin put
/_pagesize matrix def
/_halftone matrix def
/_deviceadjustmatrix matrix def
/_orientation matrix def
/_emulsion matrix def
/_imageablearea matrix def
/_labels matrix def
/_teststrips matrix def
/_cropmarks matrix def
/_registrationmarks matrix def
/_clipbox matrix def
/_beginseparation matrix def
/_endseparation matrix def
/_save null def
/_pagecount 1 def
/_showpage /showpage load def
PasteUp_separation begin
PasteUp_separation {
dup xcheck {
bind
} if pop pop
} forall end end PasteUp_separation begin
} def
/terminate {
currentdict PasteUp_separation eq {
end
} if
} def
/normalize {
matrix currentmatrix dup dup
4 get round 4 exch 0.25 add put dup dup
5 get round 5 exch 0.25 add put setmatrix
} def
/stringconcat {
dup length 2 index length add string dup 0 4 index putinterval dup 3 index length 3 index putinterval exch pop exch pop
} def
/pagesize {
aload pop exec
} def
/halftone {
dup length 4 ne {
/setcolorscreen where {
pop 7 dict begin
aload pop
/transfer2 exch cvlit def
/transfer1 exch cvlit def
/screen exch cvlit def
/blackscreen exch def
/yellowscreen exch def
/magentascreen exch def
/cyanscreen exch def
[
transfer1 cvx /exec cvx
transfer2 cvx /exec cvx
cyanscreen 3 get exec /exec cvx
] cvx
[
transfer1 cvx /exec cvx
transfer2 cvx /exec cvx
magentascreen 3 get exec /exec cvx
] cvx
[
transfer1 cvx /exec cvx
transfer2 cvx /exec cvx
yellowscreen 3 get exec /exec cvx
] cvx
[
transfer1 cvx /exec cvx
transfer2 cvx /exec cvx
blackscreen 3 get exec /exec cvx
] cvx
setcolortransfer
cyanscreen aload pop pop 3 {
exec 3 1 roll
} repeat
[ exch /exec cvx screen cvx /exec cvx ] cvx
magentascreen aload pop pop 3 {
exec 3 1 roll
} repeat
[ exch /exec cvx screen cvx /exec cvx ] cvx
yellowscreen aload pop pop 3 {
exec 3 1 roll
} repeat
[ exch /exec cvx screen cvx /exec cvx ] cvx
blackscreen aload pop pop 3 {
exec 3 1 roll
} repeat
[ exch /exec cvx screen cvx /exec cvx ] cvx setcolorscreen
end
} {
4 dict begin
aload pop
/transfer2 exch cvlit def
/transfer1 exch cvlit def
/screen exch cvlit def
/blackscreen exch def
[
transfer1 cvx /exec cvx
transfer2 cvx /exec cvx
blackscreen 3 get exec /exec cvx
] cvx
settransfer blackscreen aload pop pop 3 {
exec 3 1 roll
} repeat
[ exch /exec cvx screen cvx /exec cvx ] cvx
setscreen
end
pop pop pop
} ifelse
} {
4 dict begin
aload pop
/transfer2 exch cvlit def
/transfer1 exch cvlit def
/screen exch cvlit def
/blackscreen exch def
[
transfer1 cvx /exec cvx
transfer2 cvx /exec cvx
blackscreen 3 get exec /exec cvx
] cvx
settransfer blackscreen aload pop pop 3 {
exec 3 1 roll
} repeat
[ exch /exec cvx screen cvx /exec cvx ] cvx
setscreen
end
} ifelse
} def
/deviceadjustmatrix {
concat
} def
/orientation {
aload pop 1 eq {
pop pop
} {
pop 0 [ 0 1 -1 0 7 -2 roll ] concat
} ifelse
} def
/emulsion {
aload pop 1 eq {
pop pop
} {
pop 0 [ -1 0 0 1 7 -2 roll ] concat
} ifelse
} def /imageablearea {
concat
} def
/clipbox {
aload pop 6 dict begin
/ty exch def
/tx exch def
/ury exch def
/urx exch def
/lly exch def
/llx exch def
newpath llx lly moveto
urx lly lineto
urx ury lineto
llx ury lineto
% closepath clip
newpath % tx ty translate
end
} def
userdict
/AI3_noCropMarks null put
% Registration marks removed from here
/beginseparation {
aload pop beginseparate
} def
/endseparation {
aload pop endseparate
} def /setvar {
PasteUp_separation_vars 3 1 roll put
} def /getvar {
PasteUp_separation_vars exch get
} def
/setup {
PasteUp_separation begin
PasteUp_separation_vars begin
_pagesize pagesize
_halftone halftone
clippath 1 setgray fill
end
end
/_save save setvar
/_pagecount 1 setvar
PasteUp_separation_vars /_beginseparation get
PasteUp_separation /beginseparation get exec
PasteUp_separation /beginpage get exec
} def
/rehalftone {
PasteUp_separation begin PasteUp_separation_vars begin halftone end end
} def
/trailer {
PasteUp_separation /endpage get exec
PasteUp_separation_vars /_endseparation get
PasteUp_separation /endseparation get exec
% /_save getvar restore
} def
/beginpage {
PasteUp_separation begin
PasteUp_separation_vars begin
_deviceadjustmatrix deviceadjustmatrix
_orientation orientation
_emulsion emulsion
_imageablearea imageablearea
endseparate
_clipbox clipbox
end
end
} def
/endpage {
} def
/showpage {
PasteUp_separation /endpage get exec
PasteUp_separation_vars /_showpage get exec
/_pagecount dup getvar 1 add setvar
PasteUp_separation /beginpage get exec
} def
currentdict readonly pop end setpacking
% END separation prolog